package com.zm.mybatis.damai.mapper;

import com.zm.mybatis.damai.bean.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

//xml 的 namespace 必须和接口的类路径一致，才能映射成功
public interface UserMapper {
    List<User> selectUser();

    User selectById(int id);

    User selectByEnameAndPwd(String ename,String password);

    User selectByEnameAndPwd1(String ename,String password);

    User selectByEnameAndPwd2(String ename,String password);

    User selectByEnameAndPwd3(@Param("ename")String ename, @Param("password")String password);

    //使用实体对象传入多个参数，不需要Param注解，属性名即参数名
    int insert(User user);

    ///////////////////////////////////////////////////////
    List<User> selectByObject(User user);

    int update(User user);

    int updateAll(User user);

    List<User> selectByNameAndFlag(@Param("ename") String ename,@Param("flag") int flag);

    List<User> selectIdIn(@Param("ids") List<Integer> ids);

    User selectForState(User user);

    List<User> selectAllWithSort(String sort);

    List<Map<String,Object>> selectBySql(String sql);
}
